package observer

interface Observable<T> {

    val observers: ArrayList<Observer<T>>

    /**
     * 注册观察者
     */
    fun register(observer: Observer<T>)

    /**
     * 取消注册
     */
    fun unregister(observer: Observer<T>)

    /**
     * 发送消息
     */
    fun notify(msg: T)
}